<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html><head>

<meta content="text/html; charset=ISO-8859-1" http-equiv="content-type"><title>JXPanel painting 1.6.5 vs. experimental patch</title></head><body>
<h1>Comparison 1.6.5/1.6.5-1/patch (#4276)</h1>
<br>
The images are screenshots showing the results of running
JXPanelVisualCheck.interactiveBackgroundAlphaToggleOpaque. In each, we
have three panels side-by-side, its setup hinted at by the text of the
titled borders:<br>
<br>
<ol>
  <li>- core JPanel with semi-transparent background color (for comparison)</li>
  <li>- JXPanel with semi-transparent background color</li>
  <li>- JXPanel with solid background color and container transparency</li>
</ol>
<br>
The text of the contained label shows the return value of isOpaque.<br>
<br>
The screenshots show the visuals after:<br>
<ol>
  <li>initial (default opaque is true)</li>
  <li>after toggling opaque off</li>
  <li>after toggling opaque on again</li>
  <li>after resizing (to get rid of artefacts)</li>
</ol>
Sequence is left-to-right, then down and left to right again.<br>
<h2>Release 1.6.5/1.6.5-1 (Metal)<br>
</h2>
<h3>Screenshots<br>
</h3>
<br>
<img src="165-inital.png" style="width: 400px; height: 400px;" alt="165-initial"><img src="165-opaque-off.png" style="width: 400px; height: 400px;" alt="165-opaque-off"><br>
<img src="165-opaque-on-again.png" style="width: 400px; height: 400px;" alt="165-opaque-on-again"><img src="165-opaque-on-again-resized.png" style="width: 403px; height: 400px;" alt="165-opaque-on-again-resized"><br>
<br>
<br>
<h3>The issues</h3>
<ul>
  <li>toggling opaque off paints the background color (should not)</li>
  <li>toggling opaque on again has painting artefacts in core (expected) and x (should be handled) with transparent background </li>
  <li>after resizing (to get rid of artefacts): the panel with
container transparency is fully opaque, that is we can't get easily
back to initial</li>
</ul><br>
<h2>Patch (Metal)<br>
</h2>Can be enabled by setting UIManager.put("JXPanel.patch") early in the test. Note: the patch is <span style="font-weight: bold;">not</span> meant for production use, but just for being able to easily run diverse test cases with a modified implementation!<br>
<br>

<h3>Screenshots</h3><br>
<img style="width: 400px; height: 400px;" alt="patch-initial" src="patch-initial.png"><img style="width: 400px; height: 400px;" alt="patch-opaque-off" src="patch-opaque-off.png"><br>
<img style="width: 400px; height: 400px;" alt="patch-opaque-on-again" src="patch-opaque-on-again.png"><img style="width: 410px; height: 400px;" alt="patch-resized" src="patch-opaque-on-again-resized.png"><br>
<br>
<span style="font-weight: bold;">(Solved) Issues</span><br>
<ul>
  <li>the container-transparent panel does not paint the background if opaque off</li>
  <li>no painting artefacts (in xpanel) when toggling back to opacity</li>
  <li>container transparency retained</li>
</ul><br>
<br>
<h2>Releases (Nimbus)<br>
</h2>
<h3>Screenshots 1.6.5-1<br>
</h3>
<img style="width: 400px; height: 400px;" alt="1.6.5-1 Nimbus initial" src="1.6.5-1-nimbus-initial.png"><img style="width: 400px; height: 400px;" alt="1.6.5-1 Nimbus opaque off" src="1.6.5-1-nimbus-opaque-off.png"><br>
<img style="width: 400px; height: 400px;" alt="1.6.5-1 Nimbus opaque off again" src="1.6.5-1-nimbus-opaque-on-again.png"><img style="width: 404px; height: 400px;" alt="1.6.5-1 Nimbus opaque on again resized" src="1.6.5-1-nimbus-opaque-on-again-resized.png"><br>
<h3>Issues</h3>
<ul>
  <li>original opaque: background not painted for container alpha</li>
  <li>painting artefacts when turning opaque on again</li>
  <li>solid background with container alpha</li>
  <li>"inner" background (the rounded area inside the border) not painted with container alpha<br>
  </li>
</ul>


<br>
<br>
<h3>Screenshots 1.6.5</h3>
just historically interesting, to see the difference compared to the regression release: background is painted always, toggling opaque off has no effect<br>
<br>
<img style="width: 400px; height: 400px;" alt="165 Nimbus initial" src="165-nimbus-intial.png"><img style="width: 400px; height: 400px;" alt="1.6.5 Nimbus opaque off" src="165-nimbus-opaque-off.png"><br>
<img style="width: 400px; height: 400px;" alt="1.6.5-nimbus-opaque on again" src="165-nimbus-opaque-on-again.png"><img style="width: 406px; height: 400px;" alt="165 Nimbus opaque on again resized" src="165-nimbus-opaque-on-again-resized.png"><br>
<br>
<h2>Patch (Nimbus)<br>
</h2>
<h3>Screenshots <br>
</h3>
<img style="width: 400px; height: 400px;" alt="Patch Nimbus initial" src="patch-nimbus-initial.png"><img style="width: 400px; height: 400px;" alt="Patch Nimbus opaque off" src="patch-nimbus-opaque-off.png"><br>
<img style="width: 400px; height: 400px;" alt="Patch Nimbus opaque on again" src="patch-nimbus-opaque-on-again.png"><img style="width: 411px; height: 400px;" alt="Patch Nimbus opaque on again resized" src="patch-nimbus-opaque-on-again-resized.png"><br>
<h3>(Solved) Issues<br>
</h3>
<ul>
  <li>Background filled for all initially</li>
  <li>Background not filled if opaque off</li>
  <li>Background filled again on toggling opaque on again, no painting artefacts</li>
</ul>
<h3>Issues</h3>
<ul>
  <li>"inner" background (the rounded area inside the border) not painted with container alpha<br>
  </li>
</ul>
<br>



</body></html>